Websites do not have infinite capacity. Website capacity is constrained by the maximum throughput of the least-scaled service provided by the website. Website services can throttle or otherwise fail to service requests that push them beyond their capacity. The maximum throughput of a website can change due to underlying changes in dependent services and the nature of decoupled service development. An understanding of the capacity of the website at any given moment is difficult to ascertain with any certainty, unless load testing is performed to determine how many orders per minute the website can handle. When traffic demand exceeds capacity, the result is unpredictable and website users can have a poor or unsuccessful experience. Website users can experience increased latency and timeouts as their requests are queued. Service failures can compound, resulting in a prolonged request drops.
When customer demand exceeds website capacity, services can either fail a percentage of requests or start servicing all requests with increased latency. This causes non-linear failure that can prevent websites from reaching the highest maximum load and continuing to operate at that throughput. In other words, once capacity is reached, the number of successful requests drops and the number of customers with a failed or unsuccessful experience increases.